package com.example.base.tools.upgrade

import android.os.Parcelable
import androidx.annotation.Keep
import kotlinx.android.parcel.Parcelize

/**  下载信息实体封装类  **/
@Keep
@Parcelize
data class DownloadInfo(
    /**  基础地址  **/
    var targetFileUrl: String = "",
    /**  断点续传开始点  **/
    var startPoint: Long = 0.toLong(),
    /**  apk 文件下载后的保存路径  **/
    var apkSavePath: String = "",
    /**  apk 保存的文件名  **/
    var fileName: String = "newVersion.apk"
) : Parcelable


/**  下载状态监听回调  **/
interface DownloadListener {

    /**  当进度改变时回调  **/
    fun onProgress(progress: Int)

    /**  当下载完成时回调  **/
    fun onCompleted()

    /**  当出错时回调  **/
    fun onFailed(e: Exception)

}